/*
 * -- BASE STYLES --
 * Most of these are inherited from Base, but I want to change a few.
 */

body {
  color: #333;
}

a {
  text-decoration: none;
  color: #1b98f8;
}

/*
 * -- HELPER STYLES --
 * Over-riding some of the .pure-button styles to make my buttons look unique
 */

.primary-button,
.secondary-button {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  border-radius: 20px;
}

.primary-button {
  color: #fff;
  background: #1b98f8;
  margin: 1em 0;
}

.secondary-button {
  background: #fff;
  border: 1px solid #ddd;
  color: #666;
  padding: 0.5em 2em;
  font-size: 80%;
}

/*
 * -- LAYOUT STYLES --
 * This layout consists of three main elements, `#nav` (navigation bar), `#list` (email list), and `#main` (email content). All 3 elements are within `#layout`
 */

#layout,
#nav,
#list,
#main {
  margin: 0;
  padding: 0;
}

/* Make the navigation 100% width on phones */

#nav {
  width: 100%;
  height: 40px;
  position: relative;
  background: rgb(37, 42, 58);
  text-align: center;
}

/* Show the "Menu" button on phones */

#nav .nav-menu-button {
  display: block;
  top: 0.5em;
  right: 0.5em;
  position: absolute;
}

/* When "Menu" is clicked, the navbar should be 80% height */

#nav.active {
  height: 80%;
}

/* Don't show the navigation items... */

.nav-inner {
  display: none;
}

/* ...until the "Menu" button is clicked */

#nav.active .nav-inner {
  display: block;
  padding: 2em 0;
}

/*
 * -- NAV BAR STYLES --
 * Styling the default .pure-menu to look a little more unique.
 */

#nav .pure-menu {
  background: transparent;
  border: none;
  text-align: left;
}

#nav .pure-menu-link:hover,
#nav .pure-menu-link:focus {
  background: rgb(55, 60, 90);
}

#nav .pure-menu-link {
  color: #fff;
  margin-left: 0.5em;
}

#nav .pure-menu-heading {
  border-bottom: none;
  font-size: 110%;
  color: rgb(75, 113, 151);
}

/*
 * -- EMAIL STYLES --
 * Styles relevant to the email messages, labels, counts, and more.
 */

.email-count {
  color: rgb(75, 113, 151);
}

.email-label-personal,
.email-label-work,
.email-label-travel {
  width: 15px;
  height: 15px;
  display: inline-block;
  margin-right: 0.5em;
  border-radius: 3px;
}

.email-label-personal {
  background: #ffc94c;
}

.email-label-work {
  background: #41ccb4;
}

.email-label-travel {
  background: #40c365;
}

/* Email Item Styles */

.email-item {
  padding: 0.9em 1em;
  border-bottom: 1px solid #ddd;
  border-left: 6px solid transparent;
}

.email-avatar {
  border-radius: 3px;
  margin-right: 0.5em;
}

.email-name,
.email-subject {
  margin: 0;
}

.email-name {
  text-transform: uppercase;
  color: #999;
}

.email-desc {
  font-size: 80%;
  margin: 0.4em 0;
}

.email-item-selected {
  background: #eee;
}

.email-item-unread {
  border-left: 6px solid #1b98f8;
}

/* Email Content Styles */

.email-content-header,
.email-content-body,
.email-content-footer {
  padding: 1em 2em;
}

.email-content-header {
  border-bottom: 1px solid #ddd;
}

.email-content-title {
  margin: 0.5em 0 0;
}

.email-content-subtitle {
  font-size: 1em;
  margin: 0;
  font-weight: normal;
}

.email-content-subtitle span {
  color: #999;
}

.email-content-controls {
  margin-top: 2em;
  text-align: right;
}

.email-content-controls .secondary-button {
  margin-bottom: 0.3em;
}

.email-avatar {
  width: 40px;
  height: 40px;
}

/*
 * -- TABLET (AND UP) MEDIA QUERIES --
 * On tablets and other medium-sized devices, we want to customize some
 * of the mobile styles.
 */

@media (min-width: 40em) {
  /* Move the layout over so we can fit the nav + list in on the left */
  #layout {
    padding-left: 500px;
    /* "left col (nav + list)" width */
    position: relative;
  }
  /* These are position:fixed; elements that will be in the left 500px of the screen */
  #nav,
  #list {
    position: fixed;
    top: 0;
    bottom: 0;
    overflow: auto;
  }
  #nav {
    margin-left: -500px;
    /* "left col (nav + list)" width */
    width: 150px;
    height: 100%;
    width: 410px;
  }
  /* Show the menu items on the larger screen */
  .nav-inner {
    display: block;
    padding: 2em 0;
  }
  /* Hide the "Menu" button on larger screens */
  #nav .nav-menu-button {
    display: none;
  }
  #list {
    margin-left: -350px;
    width: 100%;
    height: 33%;
    border-bottom: 1px solid #ddd;
  }
  #main {
    position: fixed;
    top: 33%;
    right: 0;
    bottom: 0;
    left: 150px;
    overflow: auto;
    width: -moz-available;
    /* so that it's not 100% */
  }
}

/*
 * -- DESKTOP (AND UP) MEDIA QUERIES --
 * On desktops and other large-sized devices, we want to customize some
 * of the mobile styles.
 */

@media (min-width: 60em) {
  /* This will take up the entire height, and be a little thinner */
  #list {
    margin-left: -90px;
    width: 350px;
    height: 100%;
    border-right: 1px solid #ddd;
  }
  /* This will now take up it's own column, so don't need position: fixed; */
  #main {
    position: static;
    margin: 0;
    padding: 0;
    margin-left: 260px;
  }
}
